/**
 * 登录Api
 * @author Blurryface
 */

import { HSYIIRequest, GFRequest } from '/utils/request'

const baseRequest = (url, ...arg) => HSYIIRequest(`io_public/` + url, ...arg)

export default {
    /**
     * 手机号/GF帐号+密码登录
     * @param {Object} data 请求数据
     * @returns {Promise} 请求的 Promise 对象
     */
    Login_phone_API(data) {
        return GFRequest(
            { c:'io', a:'io_gfim', action:'login_phone' },
            data,
            'post',
            true,
        );
    },

    /**
     * TODO 未完善接口
     * 手机号+短信验证码登录
     * @param {Object} data 请求参数
     * @returns {Promise} 请求的 Promise 对象
     */
    Login_by_mobile_API(data) {
        return baseRequest(
            '',
            {c:'io', a:'io_phone', ...data},
            'post',
            true,
        );
    },
    /**
     * 第三方授权登录
     * @param {Object} data 请求参数
     * @returns {Promise} 请求的 Promise 对象
     */
    Third_login_API(data) {
        return GFRequest(
            { c:'io', a:'io_gfim', action:'third_login'},
            data,
            'post',
            true,
        );
    },

    /**
     * 获取自动登录信息
     * @param {Object} data 请求参数
     * @returns {Promise} 请求的 Promise 对象
     */
    Login_reget_API(data) {
        return GFRequest(
            { c:'io', a:'io_gfim', action:'login_reget' },
            data,
            'post',
            true
        );
    },

    /**
     * 检查登录密码
     * @param {Object} data 请求参数
     * @returns {Promise} 请求的 Promise 对象
     */
    Check_login_password_API(data) {
        return GFRequest(
            {c:'io', a:'io_user', action:'check_login_password'},
            data,
            'post',
            true
        );
    },

    /**
     * 退出登录
     * @param {Object} data 请求参数
     * @returns {Promise} 请求的 Promise 对象
     */
    Gf_logout_API(data) {
        return GFRequest(
            {c:'io', a:'io_gfim', action:'gf_logout'},
            data,
            'post',
            true
        );
    },

    /**
     * 检查GF帐号
     * @param {Object} data 请求参数
     * @returns {Promise} 请求的 Promise 对象
     */
    Check_gfaccount_API(data) {
        return GFRequest(
            {c:'io', a:'io_user', action:'check_gfaccount'},
            data,
            'post',
            true
        );
    },

    /**
     * 登录密码重置
     * @param {Object} data 请求参数
     * @returns {Promise} 请求的 Promise 对象
     */
    Modify_API(data) {
        return GFRequest(
            {c:'io', a:'io_user', action:'modify'},
            data,
            'post',
            true
        );
    },


}